Enhanced service delivery platform that provides a common framework for use by IMS and Web applications in delivering services

ABSTRACT

A system for supporting Internet protocol (IP) multimedia subsystem (IMS) applications, Web based applications, and converged IMS/Web based applications that use a service delivery network includes an application services middle layer between the applications and the service delivery network that includes a plurality of common components that are usable by the different applications to provide services over the service delivery network.

RELATED APPLICATIONS

This application claims the benefit of and priority to U.S. ProvisionalPatent Application No. 60/786,194, filed Mar. 27, 2006, and U.S.Provisional Patent Application No. 60/786,479, filed Mar. 28, 2006, thedisclosures of which are hereby incorporated herein by reference as ifset forth in their entireties.

BACKGROUND OF THE INVENTION

The present invention relates generally to communication network and,more particularly, to delivering services via communication networks.

One evolution in the development of communication networks has been theshift from circuit switching to packet switching in the core network. Acircuit-switched approach is based on using a dedicated circuit betweena caller and a recipient of a call. One drawback to this approach isthat certain network resources associated with the circuit path may beunavailable to anyone else for the duration of the call. In contrast,packet-switching technology operates by splitting the communicationtraffic into information units called packets, which are transmittedover a common circuit before being organized and re-assembled at theirdestinations. The packets may carry voice or data information. Thissharing of resources and the ability to use common network protocols maylead to a more cost-effective transmission system for network operators.Moreover, because more efficient routing techniques are generally usedin packet-switched networks, information may be transmitted at higherspeeds than may be possible in circuit-switched networks. The higherdata speeds may support multiple services in a single session, such asvoice, text, graphics, and/or video thereby supporting multi-mediaapplications.

The Internet protocol (IP) multimedia subsystem (IMS) is a standard thathas been developed to define the control and integration of multimediaservices in a core, packet-switched network. In particular, the IMSarchitecture defines a set of logical functions that use a signalingprotocol known as the session initiation protocol (SIP). SIP is used toestablish communication sessions in an IP network. For example, asession may be a one-to-one voice call or a session may be more complex,such as one-to-many conference calls involving multimedia services. SIPmay also be used to facilitate voice over IP (VoIP) services, in whichvoice is transported in IP data packets that are re-assembled andconverted into an audio signal for the recipient. By using VoIP, networkoperators may use the same IP infrastructure to carry voice traffic thatis used to carry data traffic. Thus, IMS may be summarized as astandardized way to connect IP devices and networks using SIP.

While the IMS architecture uses the SIP protocol to establishcommunication sessions, Web services offered on what may be called aService Delivery Platform (SDP) use different protocols to establishcommunication sessions and support transactions. For example, a Webservice may be described generally as a software system that is designedto support machine-to-machine interaction over a network. The interfacemay be described in a format such as the Web Services DescriptionLanguage (WSDL), which is an Extensible Markup Language (XML) basedservice description on how to communicate using the Web service. Othersystems may communicate with the Web service in a manner described byits WSDL interface using messages that may be enclosed in a SOAPenvelope. SOAP is a protocol for exchanging XML messages over a networktypically using the Hypertext Transfer Protocol (HTTP). Softwareapplications written in various programming languages and running onvarious platforms may use Web services via a SDP to exchange informationover a network, such as the Internet.

Unfortunately, services created for an IMS environment may notnecessarily work or work as efficiently in an SDP environment thatsupports Web services, and services created for an SDP environment maynot necessarily work or work as efficiently in an IMS environment.

SUMMARY

According to some embodiments of the present invention, a system forsupporting Internet protocol (IP) multimedia subsystem (IMS)applications, Web based applications, and converged IMS/Web basedapplications that use a service delivery network includes an applicationservices middle layer between the applications and the service deliverynetwork that includes a plurality of common components that are usableby the different applications to provide services over the servicedelivery network.

In other embodiments, the different applications include both thirdparty applications and network service provider applications.

In still other embodiments, at least one of the common componentsprovides a service to at least one application in support of theapplication's interaction with one or more end users.

In still other embodiments, the plurality of common components includesa unified directory component that is configured to store and manage anapplications services middle layer information model.

In still other embodiments, the unified directory component includes anidentity management sub-component that is configured to support thecreation and management of digital identities used for userauthentication and assignment of rights and privileges to individualswithin a subscription, a profile management sub-component that isconfigured to allow access to and manage common user data within theinformation model, a subscription management sub-component that isconfigured to provide access to and to manage subscriber informationwithin the information model, a services support sub-component that isconfigured to manage and provide access to information about serviceproviders, service features, service availability, and/or servicemetadata, a security support sub-component that is configured to createand maintain user and device authentication, integrity, and/or cipheringdata, a session management support sub-component that is configured tosupport call and/or session establishment procedures, and a policysupport sub-component that is configured to provide rules governing theuser and delivery of the services.

In still other embodiments, the plurality of common components includesa content services component that is configured to control contentacquisition and delivery of the content to subscribers of contentservices.

In still other embodiments, the content services component includes acontent management sub-component that is configured to manage the lifecycle of content objects, and a digital rights management sub-componentthat is configured to control consumption of digital media objects byallowing content providers to express usage rights.

In still other embodiments, the plurality of common components includesa session management component that is configured to manage theorchestration, interaction, and delivery of the services during asubscribed session.

In still other embodiments, the session management component includes aconverged services management sub-component that is configured to managean integration session context comprising a plurality of service types,a mobility management sub-component that is configured to enable roamingfor an end user by providing hand-off of applications that are inprogress, and a service policy management component that is configuredto determine service characteristics based on defined rules.

In still other embodiments, the plurality of common components includesa location services component that is configured to aggregateinformation about a physical/geographic location of a user, device,network, and/or network entity.

In still other embodiments, the plurality of common components includesa notification services component that is configured to send notices tousers and/or devices on demand, at a defined time, and/or on a scheduledbasis.

In still other embodiments, the plurality of common components includesa presence services component that is configured to aggregate userand/or device availability information across applications, devices,and/or networks.

In still other embodiments, the plurality of common components includesa security component that is configured to manage security associatedwith delivery of the services.

In still other embodiments, the security component includes anauthentication/authorization sub-component that is configured toauthenticate users and to authorize the users to invoke the applicationsand/or the services, a single sign on sub-component that is configuredto enable users to be authenticated across multiple services and/orapplications, and a security policy management sub-component that isconfigured to manage policies and/or rules associated with user and/ordevice authentication and/or authorization.

In still other embodiments, the plurality of common components includesa service creation component that is configured to support thedefinition, creation, and/or registering of the services.

In still other embodiments, the service creation component includes aservice definition/packaging sub-component that is configured to defineand/or package the services for presentation and consumption.

In still other embodiments, the plurality of common components includesa service provisioning component that is configured to create aninstance of a registered service for a particular subscriber.

In still other embodiments, wherein the service provisioning componentincludes a provisioning request management sub-component that isconfigured to create a service instance based on a service catalog.

In still other embodiments, the plurality of common components includesa performance management component that is configured to ensure that theservices are delivered according to a particular quality of service(QoS).

In still other embodiments, the performance management componentincludes a QoS event collection sub-component that is configured todetect and collect information on QoS violations, and a resourcemanagement sub-component that is configured to manage resources used todeliver the services.

In still other embodiments, the plurality of common components includesa partner management component that is configured to manage the accessof third parties to the applications, services, and/or commoncomponents.

In still other embodiments, the partner management component includes apartner services sub-component that is configured to control and/oraudit access to the applications, services, and/or common components,and a third party interface sub-component that is configured to providebinding of third party applications to the applications and/or commoncomponents.

In still other embodiments, the plurality of common components includesa usage data collection component that is configured to collect andaggregate information on usage of the services.

In still other embodiments, the usage data collection component includesa usage/events collection sub-component that is configured to captureuser and/or network events.

In still other embodiments, the plurality of common components includesa gateways component that is configured to provide access to services onother networks and/or to subscriber devices.

In still other embodiments, the gateways component includes a circuitswitched access sub-component that is configured to provide connectivityto public switched telephone network (PSTN) services, an advancedintelligent network (AIN) access sub-component that is configured toprovide connectivity to PSTN signaling system seven (SS7) services, anda devices services sub-component that is configured to allow thesubscriber devices to access the applications and/or services.

In further embodiments, a computer program product includes a computerreadable medium having computer readable program code embodied therein.The computer readable program code includes computer readable programcode configured to provide the application services middle layer.

In other embodiments, a method of providing services for an applicationmiddle layer between Internet protocol (IP) multimedia subsystem (IMS)applications, Web based applications, and converged IMS/Web basedapplications and a service delivery network, includes determining commonservices used by the different applications, abstracting the commonservices to provide a common interface to the services to the differentapplications, and incorporating the abstracted common services into theapplication middle layer as a plurality of common components.

In still other embodiments, the different applications comprise boththird party applications and network service provider applications.

In further embodiments, a method of delivering services over a servicedelivery network includes providing an application services middle layerbetween Internet protocol (IP) multimedia subsystem (IMS) applications,Web based applications, and converged IMS/Web based applications and theservice delivery network that includes a plurality of common components,and making use of the plurality of common components by the differentapplications to provide services via the service delivery network.

In still further embodiments, the different applications comprise boththird party applications and network service provider applications.

Other systems, methods, and/or computer program products according toembodiments of the invention will be or become apparent to one withskill in the art upon review of the following drawings and detaileddescription. It is intended that all such additional systems, methods,and/or computer program products be included within this description, bewithin the scope of the present invention, and be protected by theaccompanying claims.

BRIEF DESCRIPTION OF THE DRAWINGS

Other features of the present invention will be more readily understoodfrom the following detailed description of specific embodiments thereofwhen read in conjunction with the accompanying drawings, in which:

FIG. 1 is a block diagram that illustrates a Internet protocol (IP)multimedia subsystem (IMS) network in accordance with some embodimentsof the present invention;

FIGS. 2A and 2B are diagrams that illustrate the evolution of IMS basedservice delivery systems and Web based service delivery systems,respectively;

FIG. 3 is a diagram that illustrates an enhanced Service DeliveryPlatform (eSDP) in accordance with some embodiments of the presentinvention;

FIG. 4 is a diagram that illustrates the eSDP of FIG. 3 in greaterdetail in accordance with some embodiments of the present invention;

FIGS. 5A-5M illustrate various components of the eSDP in accordance withsome embodiments of the present invention; and

FIGS. 6 and 7 are flowcharts that illustrate operations for determiningwhat services are provided by the components comprising the eSDP andproviding services over a service delivery network, respectively, inaccordance with some embodiments of the present invention.

DETAILED DESCRIPTION OF EMBODIMENTS

While the invention is susceptible to various modifications andalternative forms, specific embodiments thereof are shown by way ofexample in the drawings and will herein be described in detail. Itshould be understood, however, that there is no intent to limit theinvention to the particular forms disclosed, but on the contrary, theinvention is to cover all modifications, equivalents, and alternativesfalling within the spirit and scope of the invention as defined by theclaims. Like reference numbers signify like elements throughout thedescription of the figures.

As used herein, the singular forms “a,” “an,” and “the” are intended toinclude the plural forms as well, unless expressly stated otherwise. Itshould be further understood that the terms “comprises” and/or“comprising” when used in this specification is taken to specify thepresence of stated features, integers, steps, operations, elements,and/or components, but does not preclude the presence or addition of oneor more other features, integers, steps, operations, elements,components, and/or groups thereof. It will be understood that when anelement is referred to as being “connected” or “coupled” to anotherelement, it can be directly connected or coupled to the other element orintervening elements may be present. Furthermore, “connected” or“coupled” as used herein may include wirelessly connected or coupled. Asused herein, the term “and/or” includes any and all combinations of oneor more of the associated listed items.

Unless otherwise defined, all terms (including technical and scientificterms) used herein have the same meaning as commonly understood by oneof ordinary skill in the art to which this invention belongs. It will befurther understood that terms, such as those defined in commonly useddictionaries, should be interpreted as having a meaning that isconsistent with their meaning in the context of the relevant art andwill not be interpreted in an idealized or overly formal sense unlessexpressly so defined herein.

The present invention may be embodied as methods, electronic devices,and/or computer program products. Accordingly, the present invention maybe embodied in hardware and/or in software (including firmware, residentsoftware, micro-code, etc.). Furthermore, the present invention may takethe form of a computer program product on a computer-usable orcomputer-readable storage medium having computer-usable orcomputer-readable program code embodied in the medium for use by or inconnection with an instruction execution system. In the context of thisdocument, a computer-usable or computer-readable medium may be anymedium that can contain, store, communicate, propagate, or transport theprogram for use by or in connection with the instruction executionsystem, apparatus, or device.

The computer-usable or computer-readable medium may be, for example butnot limited to, an electronic, magnetic, optical, electromagnetic,infrared, or semiconductor system, apparatus, device, or propagationmedium. More specific examples (a nonexhaustive list) of thecomputer-readable medium would include the following: an electricalconnection having one or more wires, a portable computer diskette, arandom access memory (RAM), a read-only memory (ROM), an erasableprogrammable read-only memory (EPROM or Flash memory), an optical fiber,and a compact disc read-only memory (CD-ROM). Note that thecomputer-usable or computer-readable medium could even be paper oranother suitable medium upon which the program is printed, as theprogram can be electronically captured, via, for instance, opticalscanning of the paper or other medium, then compiled, interpreted, orotherwise processed in a suitable manner, if necessary, and then storedin a computer memory.

As used herein, the term “IP terminal or device” refers to a terminal ordevice that may communicate using the session initiation protocol (SIP).It will be understood that an IP terminal or device may also refer todevices that communicate using SIP via a media gateway, which translatescommunications, for example, between an IP network and another network,such as the public switched telephone network or a circuit switchedwireless network.

As used herein, the term “packet” means a unit of information and/or ablock of data that may be transmitted electronically as a whole or viasegments from one device to another. Accordingly, as used herein, theterm “packet” may encompass such terms of art as “frame” and/or“message,” which may also be used to refer to a unit of transmission.

Some embodiments of the present invention stem from a realization thatthere are various functional capabilities that are provided by both anInternet protocol (IP) multimedia subsystem (IMS) network based on theSession Initiation Protocol (SIP) and a Service Delivery Platform (SDP)that supports Web services. These common functional capabilities may beaggregated to provide a middle layer between the services and aconnectivity network, such as an Internet Protocol (IP) connectivitynetwork. The aggregated functional capabilities may be used to comprisean enhanced Service Delivery Platform (eSDP) that provides a unifiedinfrastructure over which service providers may offer SIP services, Webservices, and/or services that use aspects of both SIP and Webprotocols.

Referring to FIG. 1, an IMS communication network 100 that uses SIP, inaccordance with some embodiments of the present invention, comprisescommunication networks 105 and 110, which are coupled to an IMS network115 as shown. The network 105 may be a packet-switched network thatserves one or more IP terminals/devices. The network 110 may be acircuit-switched network that provides communication facilities for oneor more mobile terminals. In accordance with various embodiments of thepresent invention, the IP terminal providing content to one or moreother IP terminals or devices may be connected to either thepacket-switched network 105 or the circuit-switched network 110.Likewise, an IP terminal that receives content from an IP terminal ordevice may be connected to either the packet-switched network 105 or thecircuit-switched network 110.

The network 105 connects to the IMS network 115 via the call sessioncontrol function (CSCF) 120. The CSCF 120 is connected to one or moreapplication servers 125 and enables the registration of IPterminals/devices and the routing of session initiation protocol (SIP)signaling messages between the application servers 125 and the IPterminals/devices. The CSCF 120 may provide similar functionality forthe terminals/devices connected serviced by the network 110 via a mediagateway 130 and media gateway control function (MGCF) 135. The MGCF 135enables SIP signaling to inter-work with other types of signaling usedby the media gateway 130. Thus, the combination of the MGCF 135 and themedia gateway 130 may provide an interface between the SIP signalingused in the IMS network 115 and the signaling used in the network 110and/or the public switched telephone network (PSTN) 140.

The communication network 100 may further comprise a home subscriberserver (HSS) database 145 that maintains a service profile and otherinformation for each end-user and associated IP terminal/device that hasregistered with the IMS network 115. The profile and other informationmay include, but is not limited to, IP address information, roaminginformation, and/or telephony services information. Moreover, as will bedescribed in more detail hereafter, the HSS may store informationregarding whether an IP terminal/device has registered as a contentprovider for other, subscribing, IP terminals/devices and whether asubscribing IP terminal/device should be alerted when a particularcontent providing IP terminal/device has registered to indicate that ithas content available for transmission.

The various elements of the communication network 100 may be connectedby a global network, such as the Internet or other publicly accessiblenetwork. Various elements of the network may be interconnected by a widearea network, a local area network, an Intranet, and/or other privatenetwork, which may not accessible by the general public. Thus, thecommunication network 100 may represent a combination of public andprivate networks or a virtual private network (VPN). Although FIG. 1illustrates an exemplary communication network, it will be understoodthat the present invention is not limited to such configurations, but isintended to encompass any configuration capable of carrying out theoperations described herein.

FIGS. 2A and 2B are diagrams that illustrate the evolution of IMS/SIPbased service delivery systems and SDP/Web based service deliverysystems, respectively. As shown in FIGS. 2A and 2B, service independentlogic from stand-alone SIP services and Web services can be pulled outto provide an IMS middle layer and an SDP middle layer, respectively,that act as interfaces between the services and the connectivitynetwork. The IMS and SDP middle layers may provide common reusablecapabilities so as to avoid having to develop such functionalcapabilities repeatedly for each application.

Referring now to FIG. 3, an enhanced Service Delivery Platform (eSDP)can be created, in accordance with some embodiments of the presentinvention, by aggregating the IMS middle layer and the SDP middle layerto provide a plurality of common capabilities that support both IMS/SIPstand-alone services, SDP/Web stand-alone services, and services thatuse aspects of both IMS and SDP/Web capabilities. The eSDP provides aninterface between IMS/SIP and SDP/Web services and a connectivitynetwork, such as an IP connectivity network. Advantageously, the eSDPmay result in lower costs per service because service providers need notdevelop certain functionality repeatedly for each application, butinstead can make use of functionality and capabilities provided by theeSDP that are shared across applications, both IMS/SIP and SDP/Web.Moreover, the eSDP may provide users with a seamless experience whentransitioning between IMS/SIP and SDP/Web services. For example, a usermay starts a SIP voice application and then decide to access a Web basedlocation service. The eSDP may provide a single authentication functionthat is valid for both the SIP service and the Web service so that theuser does not have to execute an authentication procedure for eachservice.

FIG. 4 is a block diagram that illustrates the eSDP in more detail inaccordance with some embodiments of the present invention. As discussedabove, the eSDP provides an interface between an IMS/SIP application, anSDP/Web application, a converged Web-IMS application (i.e., anapplication that uses both IMS/SIP and SDP/Web functionality) and aservice delivery network, such as an IP connectivity network. It will beunderstood, however, that the service delivery network may use anytransport mechanism in accordance with various embodiments of thepresent invention. The eSDP may wrap services into a single cohesiveframework, which may reduce complexity, simplify interaction, andimprove service management in accordance with various embodiments of thepresent invention. A network Operations Support System (OSS) may be usedto manage and maintain the eSDP. In accordance with various embodimentsof the present invention, the eSDP may comprise a plurality offunctional modules or components as shown in FIG. 4. These functionalmodules/components may include, but are not limited to, a contentservices component, a session management component, a gatewayscomponent, a partner management component, a performance managementcomponent, a location services component, a notification servicescomponent, a presence services component, a security component, aservice creation component, a service provisioning component, a unifieddirectory component, and a usage data collection component. It will beunderstood that, in accordance with various embodiments of the presentinvention, an eSDP may include additional or fewer modules/componentsthan those shown in FIG. 4 depending on the IMS/SIP, SDP/Web, and/orconverged Web-IMS applications to be supported.

The functionality of the eSDP of FIGS. 3 and 4 may be implemented as asingle processor system, a multi-processor system, or even a network ofstand-alone computer systems, in accordance with various embodiments ofthe present invention.

Computer program code for carrying out operations of an eSDP discussedabove with respect to FIGS. 3 and 4 may be written in a high-levelprogramming language, such as Java, C, and/or C++, for developmentconvenience. In addition, computer program code for carrying outoperations of embodiments of the present invention may also be writtenin other programming languages, such as, but not limited to, interpretedlanguages. Some modules or routines may be written in assembly languageor even micro-code to enhance performance and/or memory usage. In someembodiments, the computer program code may include commerciallyavailable applications and/or components provided by third parties. Itwill be further appreciated that the functionality of any or all of theprogram modules may also be implemented using discrete hardwarecomponents, one or more application specific integrated circuits(ASICs), or a programmed digital signal processor or microcontroller.

The respective components of the eSDP of FIG. 4 will now be described ingreater detail with respect to FIGS. 5A through 5M. Referring to FIG.5A, the content services component may be configured to control allaspects of content acquisition, from both third party applications andnetwork service provider applications, and delivery of that content tosubscribers of content services. The content services component mayinclude the following two sub-components: A content managementsub-component may be configured to manage the complete life cycle oflocal content objects. The content management sub-component may includefunctions for discovery, ingestion, delivery, and publication ofcontent. A digital rights management sub-component may be configured toenable the controlled consumption of digital media objects by allowingcontent providers to express usage rights.

Referring to FIG. 5B, the session management component may be configuredto manage the orchestration, interaction, and delivery of servicesduring a subscribed session. The session management component mayinclude the following three sub-components: A converged servicesmanagement sub-component may be configured to orchestrate and manage anintegrated session context composed of either Web services, SIP/IMSservices, or both types of services. It may be used by applications torequest resources, set-up and initialize the context, invite others,etc. In the context of Web services management, a Web services sessioncontext composed of complex, multi-party, multi-media services may bemanaged. In the context of SIP/IMS services management, the SIPcall/session context may be managed. A mobility management sub-componentmay be configured to enable roaming of the end user and seamlesshand-off of applications that have been invoked and are currently inprogress. For example, a session in which a user access an address bookmay be maintained as the user moves from a home WIFI network to a GSMnetwork using a dial mode handset. A service policy managementsub-component may be configured to query policy/rules in the unifieddirectory to determine service characteristics based on these rules. Forexample, a determination may be made whether the requested content canbe consumed by the requesting device.

Referring to FIG. 5C, the gateways component may be configured toprovide access to services on other networks and to subscriber devices.The gateways component may include the following three sub-components: Acircuit-switched access sub-component may be configured to provide anaccess gateway for connectivity to PSTN services. An AIN accesssub-component may be configured to provide connectivity to the PSTN SS7network services. A device services sub-component may be configured toallow devices to access eSDP capabilities and functionality. Forexample, a subscriber's PDA may be used to access a unified addressbook.

Referring to FIG. 5D, the partner management component may be configuredto manage the access of third parties to the network service providereSDP environment. The partner management component may include thefollowing two sub-components: A partner services sub-component may beconfigured to provide for controlled and audited access to the eSDP. Forexample, an Internet portal organization may be provided with theability to access the unified directory services. A third partyinterfaces sub-component may be configured to allow the binding of thirdparty applications to the eSDP as required.

Referring to FIG. 5E, the performance management component may beconfigured to ensure that services are being delivered according to theQuality of Service (QoS) that has been committed to. The performancemanagement component may include the following two sub-components: A QoSmanagement sub-component that may be configured to detect QoS violationsand to collect data thereon. For example, metrics may be providedregarding the session performance of a third party service provider. Aresource management sub-component may be configured to manage theresources required to deliver services, such as dynamically managing theinventory of server capacity and bandwidth availability. For example,the number of sessions available for a given server may be provided.

Referring to FIG. 5F, the location services component may be configuredto aggregate information about the physical/geographical location of theuser/device as well as the network or network entity that is currentlyserving, or capable of serving, the user's device. Raw data may beobtained using feeds from various networks, such as, for example,cellular, WIFI, and/or GPS infrastructures.

Referring to FIG. 5G, the notification services component may beconfigured to provide a mechanism for applications to send notices tousers and/or devices on demand, at a specific future time and/or on ascheduled basis. The delivery of notifications may be managed along withthe queuing, aging, and/or holding of notifications in accordance withvarious embodiments of the present invention.

Referring to FIG. 5H, the presence services component may be configuredto aggregate user and device availability information acrossapplications, devices, and/or networks. For example, a subscriber mayuse presence services to see active buddies while watching television.

Referring to FIG. 5I, the security component may be configured to managesecurity associated with the delivery of services. The securitycomponent may include the following three sub-components: Anauthentication and authorization sub-component that may be configured toauthenticate users and devices as well as authorize them to invoke a setof applications and/or services in a secure manner. These applicationsinclude IMS applications, Web-based applications, and convergedIMS/Web-based applications. A single-sign-on (SSO) sub-component thatmay be configured to enable users to be authenticated by other domainsor Web sites without having to maintain multiple user name/passwordcombinations. For example, a user may use a single PIN once to accessmultiple services without needing additional authentication. A securitypolicy management sub-component may be configured to manage policy/rulesregarding user and device authentication and authorization. For example,a user password may expire after six weeks.

Referring to FIG. 5J, the service creation component may be configuredto support the definition, creation, and/or registering of services. Theservice creation component may include a service definition andpackaging component that is configured to allow services to be definedand packaged for presentation and consumption.

Referring to FIG. 5K, a service provisioning component may be configuredto create an instance of a registered service for a particularsubscriber. The service provisioning component may include aprovisioning request management sub-component that is configured tocreate a service instance based on the service catalog. This may includeorchestration, configuration, and/or provisioning of the service as wellas status reporting to external systems. For example, a new VoIP servicemay be established for an existing customer.

Referring to FIG. 5L, a unified directory component may be configured tostore and manage the eSDP information model, including an HSS. Theunified directory component may provide a data management repository forservices and subscribers. The unified directory component may includethe following seven sub-components: An identity management sub-componentmay be configured to support the creation and management of digitalidentities that are used for user authentication and assignment ofrights and privileges to individuals within a subscription. For example,a subscriber may establish services permissions for different familymembers. A profile management sub-component may be configured to allowaccess to and manage common user data within the repository related touser preferences, subscriptions and/or devices. For example, a user mayestablish preferences for “find me, follow me.” A subscriptionmanagement sub-component may be configured to provide access to and tomanage subscriber information within the repository. Subscriptioninventory may allow for device specific service feature consumption. Forexample, authorization may be provided for a personalized caller-idfeature. A services support sub-component may be configured to manageand provide access to information about service providers, servicefeatures, service availability, and/or service metadata. For example, atechnical service description may be provided via a service catalog. Asession management support sub-component may be configured to supportcall and/or session establishment procedures and to provide informationon which a session control entity currently hosts the user. For example,information may be provided on the CSCF assigned during sessioncreation. A policy support sub-component may be configured to providerules governing the use and delivery of services. For example, a G.711audio codec may be required for delivery of VoIP services. A securitysupport sub-component may be configured to create and maintain user anddevice authentication, integrity, and/or ciphering data. For example, aUser ID and/or password may be created and maintained.

Referring to FIG. 5M, the usage data collection component may beconfigured to collect and aggregate all usage of subscribed services andto send that data to relevant network operators. The usage datacollection component may include a usage/events collection sub-componentthat is configured to capture user and network events. For example,charging information may be captured from video on demand usage.

The present invention is described hereinafter with reference toflowchart and/or block diagram illustrations of methods, mobileterminals, electronic devices, alarm systems, and/or computer programproducts in accordance with some embodiments of the invention.

These flowchart and/or block diagrams further illustrate exemplaryoperations of operating an eSDP system in accordance with variousembodiments of the present invention. It will be understood that eachblock of the flowchart and/or block diagram illustrations, andcombinations of blocks in the flowchart and/or block diagramillustrations, may be implemented by computer program instructionsand/or hardware operations. These computer program instructions may beprovided to a processor of a general purpose computer, a special purposecomputer, or other programmable data processing apparatus to produce amachine, such that the instructions, which execute via the processor ofthe computer or other programmable data processing apparatus, createmeans for implementing the functions specified in the flowchart and/orblock diagram block or blocks.

These computer program instructions may also be stored in a computerusable or computer-readable memory that may direct a computer or otherprogrammable data processing apparatus to function in a particularmanner, such that the instructions stored in the computer usable orcomputer-readable memory produce an article of manufacture includinginstructions that implement the function specified in the flowchartand/or block diagram block or blocks.

The computer program instructions may also be loaded onto a computer orother programmable data processing apparatus to cause a series ofoperational steps to be performed on the computer or other programmableapparatus to produce a computer implemented process such that theinstructions that execute on the computer or other programmableapparatus provide steps for implementing the functions specified in theflowchart and/or block diagram block or blocks.

Referring now to FIG. 6, operations for determining what services areprovided by the components comprising the eSDP middle layer, inaccordance with some embodiments of the present invention, begin atblock 600 where the common services that are used by IMS/SIPapplications, Web/SDP applications, and/or converged Web-IMS/SIPapplications are determined. These common services are abstracted atblock 605 so as to provide a common interface to the common servicesthat may be shared among the various applications. At block 610, theseabstracted common services are incorporated into the eSDP applicationmiddle layer as a plurality of common components and sub-components.

In accordance with various embodiments of the present invention, atleast one of the eSDP components provides a service/function/capabilityto at least one IMS/SIP, Web/SDP, and/or converged Web-IMS/SIPapplication in support of the application's interaction with one or moreend users. The IMS/SIP, Web/SDP, and/or converged Web-IMS/SIPapplications may comprise both third party applications and/or networkservice provider applications.

Referring now to FIG. 7, operations for delivering services over aservice delivery network, in accordance with some embodiments of thepresent invention, begin at block 700 where an eSDP application servicesmiddle layer that includes multiple components is provided betweenapplications, such as IMS/SIP, Web/SDP, and/or converged Web-IMS/SIPapplications, and the service delivery network. At block 705, thedifferent applications and users/subscribers may make use of the eSDPmiddle layer to provide services via the service delivery network.

The flowcharts of FIGS. 6 and 7 illustrate the architecture,functionality, and operations of embodiments of methods, systems, and/orcomputer program products for operating a service deliverysystem/network. In this regard, each block represents a module, segment,or portion of code, which comprises one or more executable instructionsfor implementing the specified logical function(s). It should also benoted that in other implementations, the function(s) noted in the blocksmay occur out of the order noted in FIGS. 6 and 7. For example, twoblocks shown in succession may, in fact, be executed substantiallyconcurrently or the blocks may sometimes be executed in the reverseorder, depending on the functionality involved.

Advantageously, as discussed above, eSDP may provide a cohesivearchitecture for the creation, deployment, delivery, and/orcustomization of services that is independent of the type of serviceprotocol, network, and/or underlying network access technology that isused. This may allow a network operator and/or application serviceprovider to test and launch new products and features faster at a lowercost per service because of common functionality that can be sharedacross applications may be integrated into the eSDP components.Moreover, both stand-alone applications and converged applications,i.e., applications that use multiple types of services, such as IMS/SIPservices and Web services, may be supported.

Many variations and modifications can be made to the embodiments withoutsubstantially departing from the principles of the present invention.All such variations and modifications are intended to be included hereinwithin the scope of the present invention, as set forth in the followingclaims.

1. A system for supporting Internet protocol (IP) multimedia subsystem(IMS) applications, Web based applications, and converged IMS/Web basedapplications that use a service delivery network, comprising: anapplication services middle layer between the applications and theservice delivery network that comprises a plurality of common componentsthat are usable by the different applications to provide services overthe service delivery network.
 2. The system of claim 1, wherein thedifferent applications comprise both third party applications andnetwork service provider applications.
 3. The system of claim 1, whereinat least one of the common components provides a service to at least oneapplication in support of the application's interaction with one or moreend users.
 4. The system of claim 1, wherein the plurality of commoncomponents comprises a unified directory component that is configured tostore and manage an applications services middle layer informationmodel.
 5. The system of claim 1, wherein the unified directory componentcomprises: an identity management sub-component that is configured tosupport the creation and management of digital identities used for userauthentication and assignment of rights and privileges to individualswithin a subscription; a profile management sub-component that isconfigured to allow access to and manage common user data within theinformation model; a subscription management sub-component that isconfigured to provide access to and to manage subscriber informationwithin the information model; a services support sub-component that isconfigured to manage and provide access to information about serviceproviders, service features, service availability, and/or servicemetadata; a security support sub-component that is configured to createand maintain user and device authentication, integrity, and/or cipheringdata; a session management support sub-component that is configured tosupport call and/or session establishment procedures; and a policysupport sub-component that is configured to provide rules governing theuser and delivery of the services.
 6. The system of claim 1, wherein theplurality of common components comprises a content services componentthat is configured to control content acquisition and delivery of thecontent to subscribers of content services.
 7. The system of claim 6,wherein the content services component comprises: a content managementsub-component that is configured to manage the life cycle of contentobjects; and a digital rights management sub-component that isconfigured to control consumption of digital media objects by allowingcontent providers to express usage rights.
 8. The system of claim 1,wherein the plurality of common components comprises a sessionmanagement component that is configured to manage the orchestration,interaction, and delivery of the services during a subscribed session.9. The system of claim 8, wherein the session management componentcomprises: a converged services management sub-component that isconfigured to manage an integration session context comprising aplurality of service types; a mobility management sub-component that isconfigured to enable roaming for an end user by providing hand-off ofapplications that are in progress; and a service policy managementcomponent that is configured to determine service characteristics basedon defined rules.
 10. The system of claim 1, wherein the plurality ofcommon components comprises a location services component that isconfigured to aggregate information about a physical/geographic locationof a user, device, network, and/or network entity.
 11. The system ofclaim 1, wherein the plurality of common components comprises anotification services component that is configured to send notices tousers and/or devices on demand, at a defined time, and/or on a scheduledbasis.
 12. The system of claim 1, wherein the plurality of commoncomponents comprises a presence services component that is configured toaggregate user and/or device availability information acrossapplications, devices, and/or networks.
 13. The system of claim 1,wherein the plurality of common components comprises a securitycomponent that is configured to manage security associated with deliveryof the services.
 14. The system of claim 1, wherein the securitycomponent comprises: an authentication/authorization sub-component thatis configured to authenticate users and to authorize the users to invokethe applications and/or the services; a single sign on sub-componentthat is configured to enable users to be authenticated across multipleservices and/or applications; and a security policy managementsub-component that is configured to manage policies and/or rulesassociated with user and/or device authentication and/or authorization.15. The system of claim 1, wherein the plurality of common componentscomprises a service creation component that is configured to support thedefinition, creation, and/or registering of the services.
 16. The systemof claim 15, wherein the service creation component comprises a servicedefinition/packaging sub-component that is configured to define and/orpackage the services for presentation and consumption.
 17. The system ofclaim 1, wherein the plurality of common components comprises a serviceprovisioning component that is configured to create an instance of aregistered service for a particular subscriber.
 18. The system of claim17, wherein the service provisioning component comprises a provisioningrequest management sub-component that is configured to create a serviceinstance based on a service catalog.
 19. The system of claim 1, whereinthe plurality of common components comprises a performance managementcomponent that is configured to ensure that the services are deliveredaccording to a particular quality of service (QoS).
 20. The system ofclaim 19, wherein the performance management component comprises: a QoSevent collection sub-component that is configured to detect and collectinformation on QoS violations; and a resource management sub-componentthat is configured to manage resources used to deliver the services. 21.The system of claim 1, wherein the plurality of common componentscomprises a partner management component that is configured to managethe access of third parties to the applications, services, and/or commoncomponents.
 22. The system of claim 21, wherein the partner managementcomponent comprises: a partner services sub-component that is configuredto control and/or audit access to the applications, services, and/orcommon components; and a third party interface sub-component that isconfigured to provide binding of third party applications to theapplications and/or common components.
 23. The system of claim 1,wherein the plurality of common components comprises a usage datacollection component that is configured to collect and aggregateinformation on usage of the services.
 24. The system of claim 23,wherein the usage data collection component comprises a usage/eventscollection sub-component that is configured to capture user and/ornetwork events.
 25. The system of claim 1, wherein the plurality ofcommon components comprises a gateways component that is configured toprovide access to services on other networks and/or to subscriberdevices.
 26. The system of claim 25, wherein the gateways componentcomprises: a circuit switched access sub-component that is configured toprovide connectivity to public switched telephone network (PSTN)services; an advanced intelligent network (AIN) access sub-componentthat is configured to provide connectivity to PSTN signaling systemseven (SS7) services; and a devices services sub-component that isconfigured to allow the subscriber devices to access the applicationsand/or services.
 27. A computer program product comprising a computerreadable medium having computer readable program code embodied therein,the computer readable program code comprising computer readable programcode configured to provide the application services middle layer recitedin claim
 1. 28. A method of providing services for an application middlelayer between Internet protocol (IP) multimedia subsystem (IMS)applications, Web based applications, and converged IMS/Web basedapplications and a service delivery network, comprising: determiningcommon services used by the different applications; abstracting thecommon services to provide a common interface to the services to thedifferent applications; and incorporating the abstracted common servicesinto the application middle layer as a plurality of common components.29. The method of claim 28, wherein the different applications compriseboth third party applications and network service provider applications.30. A method of delivering services over a service delivery network,comprising: providing an application services middle layer betweenInternet protocol (IP) multimedia subsystem (IMS) applications, Webbased applications, and converged IMS/Web based applications and theservice delivery network that comprises a plurality of commoncomponents; and making use of the plurality of common components by thedifferent applications to provide services via the service deliverynetwork.
 31. The method of claim 30, wherein the different applicationscomprise both third party applications and network service providerapplications.